package com.delio.server.pagos.horarios;

import java.sql.SQLException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.List;

import com.delio.client.pagos.horarios.Horario;
import com.delio.server.base.Conexion;
import com.ibatis.sqlmap.client.SqlMapClient;

public class Horarios {

	private static SqlMapClient sqlMap = null;

	public static boolean save(Horario ho) {
		sqlMap = Conexion.getSqlMap();

		DateFormat df = new SimpleDateFormat("HH:MM");
		
		
		
		boolean respuesta = true;
		try {
			try {
				ho.setHentrada(df.parse(ho.getHoraentrada()));
				ho.setHsalida(df.parse(ho.getHorasalida()));
			} catch (ParseException e) {
				
				e.printStackTrace();
			}
			
			if (ho.getId() != null){
				sqlMap.insert("updateHorario", ho);
			   
			}
			else
				sqlMap.insert("insertHorario", ho);

		} catch (SQLException e) {
			e.printStackTrace();

			return false;
		}

		return respuesta;
	}

	public static boolean delete(Integer id) {
		sqlMap = Conexion.getSqlMap();
		boolean respuesta = true;
		try {
			if (id != null)
				sqlMap.delete("deleteHorario", id);
			else
				respuesta = true;

		} catch (SQLException e) {
			e.printStackTrace();
			respuesta = false;
		}

		return respuesta;

	}

	public static boolean deleteAll(String ids) {
		sqlMap = Conexion.getSqlMap();
		boolean respuesta = true;
		try {
			if (ids != null)
				sqlMap.delete("deleteAllHorario", ids);
			else
				respuesta = false;

		} catch (SQLException e) {
			e.printStackTrace();
			respuesta = false;
		}
		return respuesta;
	}

	@SuppressWarnings("unchecked")
	public static List<Horario> getLista() {
		sqlMap = Conexion.getSqlMap();
		List<Horario> data = null;
		try {
			data = sqlMap.queryForList("listHorario");

		} catch (SQLException e) {

			e.printStackTrace();
			return null;
		}
		return data;
	}

	@SuppressWarnings("unchecked")
	public static List<Horario> getLista(Integer empleado_id) {
		sqlMap = Conexion.getSqlMap();
		List<Horario> data = null;
		try {
			data = sqlMap.queryForList("horarios",empleado_id);

		} catch (SQLException e) {

			e.printStackTrace();
			return null;
		}
		return data;
	}
	
	
}
